<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.thymeleaf.org">
	<head>
		<meta charset="utf-8">
		<title>角色管理</title>
		<link href="../../static/component/pear/css/pear.css" rel="stylesheet" th:href="@{/static/component/pear/css/pear.css}"/>
	</head>
	<body class="pear-container">
		<div class="layui-card">
			<div class="layui-card-body">
				<form class="layui-form" action="">
					<div class="layui-form-item">
						<div class="layui-form-item layui-inline">
							<label class="layui-form-label">用户名</label>
							<div class="layui-input-inline">
								<input type="hidden" th:value="${rid}" name="rid" id="rid">
								<input type="text" name="username" placeholder="" class="layui-input">
							</div>
						</div>
						<div class="layui-form-item layui-inline">
							<label class="layui-form-label">手机号</label>
							<div class="layui-input-inline">
								<input type="text" name="phone" placeholder="" class="layui-input">
							</div>
						</div>
						<div class="layui-form-item layui-inline">
							<button class="pear-btn pear-btn-md pear-btn-primary" lay-submit lay-filter="role-query">
								<i class="layui-icon layui-icon-search"></i>
								查询
							</button>
							<button type="reset" class="pear-btn pear-btn-md">
								<i class="layui-icon layui-icon-refresh"></i>
								重置
							</button>
						</div>
					</div>
				</form>
			</div>
		</div>
		<div class="layui-card">
			<div class="layui-card-body">
				<table id="role-table" lay-filter="role-table"></table>
			</div>
		</div>
		
		<script type="text/html" id="role-toolbar">
			<button class="pear-btn pear-btn-danger pear-btn-md" lay-event="batchAddrole">
				<i class="layui-icon layui-icon-delete"></i>
				批量授权
			</button>
		</script>
		
		<script type="text/html" id="role-bar">
			<button class="pear-btn pear-btn-danger pear-btn-sm" lay-event="addrole">授权</button>
		</script>

		<script type="text/html" id="role-enable">

			{{#if (d.is_off == 1) { }}
			<button class="pear-btn pear-btn-danger pear-btn-sm">封禁</button>
			{{# }else if(d.is_off == 0){ }}
			<button class="pear-btn pear-btn-success pear-btn-sm">正常</button>
			{{# } }}
		</script>

		<script src="../../static/component/layui/layui.js" th:src="@{/static/component/layui/layui.js}"></script>
		<script src="../../static/component/pear/pear.js" th:src="@{/static/component/pear/pear.js}"></script>
		<script>
		    layui.use(['table','form','jquery'],function () {
		        let table = layui.table;
		        let form = layui.form;
		        let $ = layui.jquery;
		
		        let MODULE_PATH = "operate/";
		
		        let cols = [
		            [
		                {type:'checkbox'},
		                {title: '用户名', field: 'username', align:'center', width:100},
		                {title: '用户名称', field: 'nick_name', align:'center', width:100},
		                {title: '邮箱', field: 'email', align:'center'},
		                {title: '电话', field: 'phone', align:'center'},
						{title: '用户状态', field: 'is_off', align: 'center', templet: '#role-enable'},
						{title: '创建时间', field: 'create_time', align:'center'},
		                {title: '操作', toolbar: '#role-bar', align:'center', width:195}
		            ]
		        ]
		
		        table.render({
		            elem: '#role-table',
		            url: '/system/role/norolechange',
					where:{rid:$("#rid").val()},
		            page: true ,
					limits: [5,10,15,20],
					limit: 5, //每页默认显示的数量
		            cols: cols ,
		            skin: 'line',
		            toolbar: '#role-toolbar',
		            defaultToolbar: [{
						title: '刷新',
		                layEvent: 'refresh',
		                icon: 'layui-icon-refresh',
		            }, 'filter', 'print', 'exports'],
					parseData:function(res){
						return {
							"code" : res.code, //解析接口状态
							"msg" : res.msg, //解析提示文本
							"data" : res.data.records, //解析数据列表
							"count" : res.data.total
						}
					},
		        });
		
		        table.on('tool(role-table)', function(obj){
		            if(obj.event === 'addrole'){
		                window.addrole(obj);
		            } else if(obj.event === 'edit'){
		                window.edit(obj);
		            } else if(obj.event === 'power'){
		                window.power(obj);
		            }
		        });
		
		        table.on('toolbar(role-table)', function(obj){
		            if(obj.event === 'add'){
		                window.add();
		            } else if(obj.event === 'refresh'){
		                window.refresh();
		            } else if(obj.event === 'batchAddrole'){
		                window.batchAddrole(obj);
		            }
		        });
		
		        form.on('submit(role-query)', function(data){
		            table.reload('role-table',{where:data.field})
		            return false;
		        });
		
		        // form.on('switch(role-enable)', function(obj){
				// 	var is_open = 0;
				// 	if (obj.elem.checked){
				// 		is_open = 1
				// 	}
				// 	// console.log(obj)
				// 	$.ajax({
				// 		type:'post',
				// 		url:"/system/role/openupdate",
				// 		dataType:'json',
				// 		data:JSON.stringify({"roleId":this.value,"is_open":is_open}),
				// 		contentType:'application/json',
				// 		success:function (data) {
				//
				// 			if (data.code === 500){
				// 				layer.tips(data.msg, obj.othis);
				//
				// 			}
				// 			if (data.code === 0){
				// 				layer.tips(data.msg, obj.othis);
				// 			}
				//
				// 		},
				// 		error:function () {
				// 			layer.tips("网络错误")
				// 		}
				// 	});
		        // });
		
		        window.add = function(){
					//获取当前页面的高度
					var height = $(document.body).height();
					// //获取当前页面的宽度
					var width = $(document.body).width();
		            layer.open({
		                type: 2,
		                title: '新增',
		                shade: 0.1,
		                area:[Number(width/2)+Number(width/4)+"px",Number(height*1.5)+"px"],
						maxmin:true,
		                content: '/system/role/rolechangeadd.html'
		            });
		        }
		
		        window.addrole = function(obj){
		            layer.confirm('确定要取消该用户角色吗？', {icon: 3, title:'提示'}, function(index){
		                layer.close(index);
		                let loading = layer.load();
						$.ajax({
							url: "/system/role/addUserRole",
							dataType: 'json',
							type: 'post',
							data:JSON.stringify({"userid":obj.data['userId'],"rid":$("#rid").val()}),
							contentType:'application/json',
							success: function(result) {
								layer.close(loading);
								if (result.code ===0) {
									layer.msg(result.msg, {
										icon: 1,
										time: 1000
									}, function() {
										obj.del();
									});
								} else {
									layer.msg(result.msg, {
										icon: 2,
										time: 1000
									});
								}
							}
						})
		            });
		        }
		
		        window.batchAddrole = function(obj){
		            let data = table.checkStatus(obj.config.id).data;
		            if(data.length === 0){
		                layer.msg("未选中数据",{icon:3,time:1000});
		                return false;
		            }
		            let ids = "";
		            for(let i = 0;i<data.length;i++){
		                ids += data[i].userId+",";
		            }
		            ids = ids.substr(0,ids.length-1);
		            layer.confirm('确定要取消这些用户角色吗？', {icon: 3, title:'提示'}, function(index){
		                layer.close(index);
		                let loading = layer.load();
		                $.ajax({
							url: "/system/role/addUserRole",
							dataType: 'json',
							type: 'post',
							data:JSON.stringify({"userid":ids,"rid":$("#rid").val()}),
							contentType:'application/json',
		                    success:function(result){
		                        layer.close(loading);
		                        if(result.code ===0){
		                            layer.msg(result.msg,{icon:1,time:1000},function(){
		                                table.reload('role-table');
		                            });
		                        }else{
		                            layer.msg(result.msg,{icon:2,time:1000});
		                        }
		                    }
		                })
		            });
		        }
		
		        window.refresh = function(){
		            table.reload('role-table');
		        }
		    })
		</script>
	</body>
</html>
